import PropTypes from 'prop-types';

// 質問入力画面
export const BodyDataInputContextConstant = {
  parent: PropTypes.shape({
    inputData: PropTypes.object,
    errorInfo: PropTypes.object,
    pageIndex: PropTypes.number,
    updateState: PropTypes.func,
    handleSave: PropTypes.func,
    handleNext: PropTypes.func,
    handleBack: PropTypes.func,
    handleHome: PropTypes.func,
    handleSelectAlcoholHabit: PropTypes.func,
    handleSelectAlcoholFrequency: PropTypes.func,
    validateQuestionPage: PropTypes.func,
    labelHome: PropTypes.string,
    labelNext: PropTypes.string,
    labelBack: PropTypes.string,
    disabledNext: PropTypes.bool,
  }),
}

// 共通レイアウト
export const LayoutViewContextConstant = {
  parent: PropTypes.shape({
    gotoHome: PropTypes.func,
    handleNext: PropTypes.func,
    handleBack: PropTypes.func,
    handleHome: PropTypes.func,
    labelHome: PropTypes.string,
    labelNext: PropTypes.string,
    labelBack: PropTypes.string,
    disabledNext: PropTypes.bool,
    backToHome: PropTypes.bool,
  }),
  layout: PropTypes.shape({
    mode: PropTypes.string.isRequired,
    title: PropTypes.string,
    errorText: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),
    top: PropTypes.object,
    question: PropTypes.object,
    report: PropTypes.object,
    detail: PropTypes.object,
  }),
}
